import request from '@/config/axios'

// 线路管理 VO
export interface LineVO {
  id: number // ID
  projectNo: string // 项目编码
  projectName: string //项目名称
  lineCode: string // 线路编码
  lineName: string // 线路名称
  lineType: string // 线路类别(公路运输、铁路运输)
  customerUscc: string // 客户统一信用代码
  customerType: boolean // 客户类型
  customerName: string // 客户名称
  consignor: string // 发货单位名称
  consignorUscc: string // 发货单位统一社会信用代码
  consignorName: string // 发货联系人
  consignorPhone: string // 发货联系人电话
  consignorAddrCode: string // 发货地区划代码
  consignorAddr: string // 出发(装货)地址
  consignorDetailAddr: string // 发货方详细地址
  consignee: string // 收货单位名称
  consigneeUscc: string // 收货单位统一社会信用代码
  consigneeName: string // 收货联系人
  consigneePhone: string // 收货联系人电话
  consigneeAddrCode: string // 收货地区划代码
  consigneeAddr: string // 目的(收货)地址
  consigneeDetailAddr: string // 收货方详细地址
  goodsName: string // 货物名称
  deptId: number // 机构ID
}

// 线路管理 API
export const LineApi = {
  // 查询线路管理分页
  getLinePage: async (params: any) => {
    return await request.get({ url: `/base/line/page`, params })
  },

  // 查询线路管理详情
  getLine: async (id: number) => {
    return await request.get({ url: `/base/line/get?id=` + id })
  },

  // 新增线路管理
  createLine: async (data: LineVO) => {
    return await request.post({ url: `/base/line/create`, data })
  },

  // 修改线路管理
  updateLine: async (data: LineVO) => {
    return await request.put({ url: `/base/line/update`, data })
  },

  // 删除线路管理
  deleteLine: async (id: number) => {
    return await request.delete({ url: `/base/line/delete?id=` + id })
  },

  // 批量删除线路管理
  deleteLines: async (ids: string) => {
    return await request.delete({ url: `/base/line/deletes?ids=` + ids })
  },

  // 导出线路管理 Excel
  exportLine: async (params) => {
    return await request.download({ url: `/base/line/export-excel`, params })
  }
}
